home *** CD-ROM | disk | FTP | other *** search
Wrap
RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) NNNNaaaammmmeeee RWSlistCollectables - Rogue Wave library class SSSSyyyynnnnooooppppssssiiiissss // Smalltalk typedef: typedef RWSlistCollectables LinkedList ; #include <rw/slistcol.h> RWSlistCollectables a; DDDDeeeessssccccrrrriiiippppttttiiiioooonnnn Class RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss represents a group of ordered elements, without keyed access. Duplicates are allowed. The ordering of elements is determined externally, by the order of insertion and removal. An object stored by RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss must inherit abstract base class RRRRWWWWCCCCoooolllllllleeeeccccttttaaaabbbblllleeee. The virtual function iiiissssEEEEqqqquuuuaaaallll(((()))) (see class RRRRWWWWCCCCoooolllllllleeeeccccttttaaaabbbblllleeee) is required to find a match between a target and an item in the collection Class RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss is implemented as a singly-linked list, which allows for efficient insertion and removal, but efficient movement in only one direction. This class corresponds to the Smalltalk class LLLLiiiinnnnkkkkeeeeddddLLLLiiiisssstttt. PPPPeeeerrrrssssiiiisssstttteeeennnncccceeee Polymorphic PPPPuuuubbbblllliiiicccc CCCCoooonnnnssssttttrrrruuuuccccttttoooorrrrssss RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss(); Constructs an empty linked list. RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss(RWCollectable* a); Constructs a linked list with single item aaaa. PPPPuuuubbbblllliiiicccc MMMMeeeemmmmbbbbeeeerrrr OOOOppppeeeerrrraaaattttoooorrrrssss RWBoolean ooooppppeeeerrrraaaattttoooorrrr========(const RWSlistCollectables& s) const; Returns TTTTRRRRUUUUEEEE if self and ssss have the same number of members and if for every item in self, the corresponding item at the same index in ssss iiiissssEEEEqqqquuuuaaaallll PPPPaaaaggggeeee 1111 RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) to it. PPPPuuuubbbblllliiiicccc MMMMeeeemmmmbbbbeeeerrrr FFFFuuuunnnnccccttttiiiioooonnnnssss virtual RWCollectable* aaaappppppppeeeennnndddd(RWCollectable*); Redefined from RRRRWWWWSSSSeeeeqqqquuuueeeennnncccceeeeaaaabbbblllleeee. Inserts the item at the end of the collection and returns it. Returns nnnniiiillll if the insertion was unsuccessful. virtual void aaaappppppppllllyyyy(RWapplyCollectable ap, void*); Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. This function has been redefined to apply the user-defined function pointed to by aaaapppp to each member of the collection, in order, from first to last. virtual RWCollectable*& aaaatttt(size_t i); virtual const RWCollectable* aaaatttt(size_t i) const; Redefined from class RRRRWWWWSSSSeeeeqqqquuuueeeennnncccceeeeaaaabbbblllleeee. The index iiii must be between 0 and the number of items in the collection less one, or an exception of type RRRRWWWWBBBBoooouuuunnnnddddssssEEEErrrrrrrr will be thrown. Note that for a linked list, these functions must traverse all the links, making them not particularly efficient. virtual RWspace bbbbiiiinnnnaaaarrrryyyySSSSttttoooorrrreeeeSSSSiiiizzzzeeee() const; Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. virtual void cccclllleeeeaaaarrrr(); Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. virtual void cccclllleeeeaaaarrrrAAAAnnnnddddDDDDeeeessssttttrrrrooooyyyy(); Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. virtual int ccccoooommmmppppaaaarrrreeeeTTTToooo(const RWCollectable* a) const; PPPPaaaaggggeeee 2222 RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttaaaabbbblllleeee. virtual RWBoolean ccccoooonnnnttttaaaaiiiinnnnssss(const RWCollectable* target) const; Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. RWBoolean ccccoooonnnnttttaaaaiiiinnnnssssRRRReeeeffffeeeerrrreeeennnncccceeee(const RWCollectable* e) const; Returns true if the list contains an item that iiiissss iiiiddddeeeennnnttttiiiiccccaaaallll ttttoooo the item pointed to by eeee (that is, that has the address eeee). virtual size_t eeeennnnttttrrrriiiieeeessss() const; Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. virtual RWCollectable* ffffiiiinnnndddd(const RWCollectable* target) const; Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. The first item that matches ttttaaaarrrrggggeeeetttt is returned, or nnnniiiillll if no item was found. RWCollectable* ffffiiiinnnnddddRRRReeeeffffeeeerrrreeeennnncccceeee(const RWCollectable* e) const; Returns the first item that iiiissss iiiiddddeeeennnnttttiiiiccccaaaallll ttttoooo the item pointed to by eeee (that is, that has the address eeee), or nnnniiiillll if none is found. virtual RWCollectable* ffffiiiirrrrsssstttt() const; Redefined from class RRRRWWWWSSSSeeeeqqqquuuueeeennnncccceeeeaaaabbbblllleeee. Returns the item at the beginning of the list. RWCollectable* ggggeeeetttt(); Returns and rrrreeeemmmmoooovvvveeeessss the item at the beginning of the list. virtual unsigned hhhhaaaasssshhhh() const; PPPPaaaaggggeeee 3333 RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttaaaabbbblllleeee. virtual size_t iiiinnnnddddeeeexxxx(const RWCollectable* c) const; Redefined from class RRRRWWWWSSSSeeeeqqqquuuueeeennnncccceeeeaaaabbbblllleeee. Returns the index of the first item that iiiissssEEEEqqqquuuuaaaallll to the item pointed to by cccc. If there is no such item, returns RRRRWWWW____NNNNPPPPOOOOSSSS. virtual RWCollectable* iiiinnnnsssseeeerrrrtttt(RWCollectable* c); Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. Adds the item to the end of the collection and returns it. Returns nnnniiiillll if the insertion was unsuccessful. void iiiinnnnsssseeeerrrrttttAAAAtttt(size_t indx, RWCollectable* e); Redefined from class RRRRWWWWSSSSeeeeqqqquuuueeeennnncccceeeeaaaabbbblllleeee. Adds a new item to the collection at position iiiinnnnddddxxxx. The item previously at position iiii is moved to iiii++++1111, eeeettttcccc. The index iiiinnnnddddxxxx must be between 0 and the number of items in the collection, or an exception of type RRRRWWWWBBBBoooouuuunnnnddddssssEEEErrrrrrrr will be thrown. virtual RWClassID iiiissssAAAA() const; Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttaaaabbbblllleeee to return ________RRRRWWWWSSSSLLLLIIIISSSSTTTTCCCCOOOOLLLLLLLLEEEECCCCTTTTAAAABBBBLLLLEEEESSSS. virtual RWBoolean iiiissssEEEEmmmmppppttttyyyy() const; Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. virtual RWCollectable* llllaaaasssstttt() const; Redefined from class RRRRWWWWSSSSeeeeqqqquuuueeeennnncccceeeeaaaabbbblllleeee. Returns the value at the end of the collection. virtual size_t ooooccccccccuuuurrrrrrrreeeennnncccceeeessssOOOOffff(const RWCollectable* target) const; Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. Returns the number of items that iiiissssEEEEqqqquuuuaaaallll to the item pointed to by ttttaaaarrrrggggeeeetttt. PPPPaaaaggggeeee 4444 RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) size_t ooooccccccccuuuurrrrrrrreeeennnncccceeeessssOOOOffffRRRReeeeffffeeeerrrreeeennnncccceeee(const RWCollectable* e) const; Returns the number of items that aaaarrrreeee iiiiddddeeeennnnttttiiiiccccaaaallll ttttoooo the item pointed to by eeee (that is, that have the address eeee). virtual RWCollectable* pppprrrreeeeppppeeeennnndddd(RWCollectable*); Redefined from class RRRRWWWWSSSSeeeeqqqquuuueeeennnncccceeeeaaaabbbblllleeee. Adds the item to the beginning of the collection and returns it. Returns nnnniiiillll if the insertion was unsuccessful. virtual RWCollectable* rrrreeeemmmmoooovvvveeee(const RWCollectable* target); Redefined from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. Removes and returns the first item that iiiissssEEEEqqqquuuuaaaallll to the item pointed to by ttttaaaarrrrggggeeeetttt. Returns nnnniiiillll if there is no such item. virtual void rrrreeeemmmmoooovvvveeeeAAAAnnnnddddDDDDeeeessssttttrrrrooooyyyy(const RWCollectable* target); Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. RWCollectable* rrrreeeemmmmoooovvvveeeeRRRReeeeffffeeeerrrreeeennnncccceeee(const RWCollectable* e); Removes and returns the first item that iiiissss iiiiddddeeeennnnttttiiiiccccaaaallll ttttoooo the item pointed to by eeee (that is, that has the address eeee). Returns nnnniiiillll if there is no such item. virtual void rrrreeeessssttttoooorrrreeeeGGGGuuuuttttssss(RWvistream&); virtual void rrrreeeessssttttoooorrrreeeeGGGGuuuuttttssss(RWFile&); virtual void ssssaaaavvvveeeeGGGGuuuuttttssss(RWvostream&) const; virtual void ssssaaaavvvveeeeGGGGuuuuttttssss(RWFile&) const; Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttiiiioooonnnn. RWStringID ssssttttrrrriiiinnnnggggIIIIDDDD(); PPPPaaaaggggeeee 5555 RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) RRRRWWWWSSSSlllliiiissssttttCCCCoooolllllllleeeeccccttttaaaabbbblllleeeessss((((3333CCCC++++++++)))) (acts virtual) Inherited from class RRRRWWWWCCCCoooolllllllleeeeccccttttaaaabbbblllleeee. PPPPaaaaggggeeee 6666